A terminal server environment consist of one or more terminal servers to which are networked (by any suitable connection) a plurality of thin client computer nodes. Application execution, data processing and, usually, data storage occur on the terminal servers. The user's thin client computer node acts primarily as a graphical user interface and does not carry out substantive application processing. Currently implementations of this environment include Windows 2000 Terminal Services, Windows NT4.0 Terminal Server (WTS) and MetaFrame (trade mark), the last of these working with the WTS. The MetaFrame implementation permits files to be stored locally on a user's computer node, whereas WTS does not.
In operation, each user logs on to a separate session with the terminal servers. Each user node uses a varying amount of terminal server central processing unit (CPU) time, or cycles. The amount of CPU time used, for instance, by a word processing application during normal typing tends to be quite small. However, if the user instructs the word processors to perform an intensive task, such as a complex macro, the application may use all of the available CPU capacity to perform the task as quickly as possible. A given application being utilised by a user's computer node typically will use a plurality of threads to interface with the CPU within any given process.
Where a computer is dedicated to a single user this is usually acceptable behaviour. However, for a terminal server environment, which is accessed concurrently by many users, this behaviour can become problematic, especially when several processes are performing CPU intensive tasks. Subsequently, all users logged on to the terminal servers will encounter performance issues and unresponsive sessions. During long periods of unresponsiveness the server can become unstable, which is particularly problematic as the system administrator will be unable to determine the cause and resolve the issue due to the unresponsiveness of the server.
It is an aim of preferred embodiments of the present invention to obviate or overcome a disadvantage of the prior art, whether referred to herein or otherwise.